// class Test {
//     static staticProp = '这是一个静态属性'
//     // 实例属性 
//     // 声明实例属性
//     name: string;
//     sex: string;

//     constructor(){
//         // this代表的是new出来的实例对象
//         this.name = '张三'
//         this.sex = 'man'
//     }
// }

// // 访问静态属性
// Test.staticProp

// // 创建一个实例对象
// const h = new Test();
// console.log('---', h.name,h.sex)


class Test {
    static staticProp = '这是一个静态属性'
    // 实例属性 
    // 声明实例属性
    name: string;
    sex: string;
    age = 20;
    constructor(name:string,sex:string){
        // this代表的是new出来的实例对象
        this.name = name
        this.sex = sex
    }
    // 实例方法
    sayAge = () => {
        console.log('age', this.age)
    }
}

// 创建一个实例对象
const h = new Test('阿唯','man---');
console.log('---', h.name,h.sex)
h.sayAge();

class Hello extends Test {
    // cls = '前端测试'
    cls: string;
    constructor(name: string,sex: string,cls: string) {
        super(name,sex) // super 代表的是父类的构造函数
        this.cls = cls
    }
}

const h2 = new Hello('测试二','women','前端测试er')
console.log('h2', h2)